Page({
  data: {
    today: '', // 今天日期
    title: '', // 行程标题
    selectedDate: '', // 选择的日期
    desc: '', // 行程描述
    allSpots: [ // 相思湖小镇景点列表
      { id: 1, name: '相思湖湿地公园' },
      { id: 2, name: '创客小镇' },
      { id: 3, name: '文创街区' },
      { id: 4, name: '网红打卡点' },
      { id: 5, name: '特色美食街' },
      { id: 6, name: '亲子乐园' }
    ],
    selectedSpots: [] // 选中的景点
  },

  onLoad() {
    // 设置今天日期为默认起始日期
    const today = new Date().toISOString().split('T')[0];
    this.setData({ today });
  },

  // 处理标题输入
  handleTitleChange(e) {
    this.setData({ title: e.detail.value });
  },

  // 处理日期选择
  handleDateChange(e) {
    this.setData({ selectedDate: e.detail.value });
  },

  // 处理描述输入
  handleDescChange(e) {
    this.setData({ desc: e.detail.value });
  },

  // 切换景点选择状态
  toggleSpot(e) {
    const name = e.currentTarget.dataset.name;
    const { selectedSpots } = this.data;
    const index = selectedSpots.indexOf(name);
    
    if (index === -1) {
      // 未选中则添加
      selectedSpots.push(name);
    } else {
      // 已选中则移除
      selectedSpots.splice(index, 1);
    }
    
    this.setData({ selectedSpots });
  },

  // 保存行程
  savePlan() {
    const { title, selectedDate, desc, selectedSpots } = this.data;
    
    // 验证输入
    if (!title) {
      wx.showToast({ title: '请输入行程标题', icon: 'none' });
      return;
    }
    if (!selectedDate) {
      wx.showToast({ title: '请选择行程日期', icon: 'none' });
      return;
    }
    if (selectedSpots.length === 0) {
      wx.showToast({ title: '请至少选择一个景点', icon: 'none' });
      return;
    }

    // 生成行程ID
    const id = Date.now().toString();
    
    // 构建行程数据
    const newPlan = {
      id,
      title,
      date: selectedDate,
      desc,
      spots: selectedSpots,
      createTime: new Date().toISOString()
    };

    // 从本地存储获取现有行程
    const plans = wx.getStorageSync('xcjh_plans') || [];
    plans.unshift(newPlan); // 添加到数组前面
    
    // 保存到本地存储
    wx.setStorageSync('xcjh_plans', plans);
    
    // 提示并返回列表页
    wx.showToast({ title: '行程保存成功' });
    setTimeout(() => {
      wx.navigateBack();
    }, 1500);
  }
});